/**
 * \class GenStmt Generator/GenStmt.h
 *
 * \brief Generates statement.
 *
 *  Created on: 5 apr 2011
 *      Author: ytc0039
 */

#ifndef GENSTMT_H_
#define GENSTMT_H_

class IStmt;


class GenStmt {
public:
	GenStmt();
	virtual ~GenStmt();

	enum STMT_LIST { ASSIGNMENT,DECLARATION };
	static const int NR_OF_STMT=2;

	/**
	 * \brief Generate a new statement
	 *
	 * At the time being there exists only 2 statements.
	 *    * Assignment of: type ident = exp
	 *    * Declaration of: ident = exp
	 *
	 * both are similar.
	 * @return Statement
	 */
	const IStmt* GenerateStmt();
};

#endif /* GENSTMT_H_ */
